/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package merlion.frm.bpm.session;

import java.util.Collection;
import javax.ejb.Local;
import merlion.frm.bpm.entity.SupplierInvoice;
import merlion.frm.bpm.entity.SupplierPaymentRecord;
import merlion.frm.bpm.entity.SupplierReceipt;
import merlion.scm.rmpm.entity.RawMaterialSalesOrder;

/**
 *
 * @author Yuwei
 */
@Local
public interface ProcurementBPSessionBeanLocal {
    
    public SupplierInvoice saveSupplierInvoice(SupplierInvoice invoice);
    public Collection<SupplierInvoice> getAllSupplierInvoice();
    public SupplierPaymentRecord saveSupplierPaymentRecord(SupplierPaymentRecord spr);
    public Collection<SupplierPaymentRecord> getAllSupplierPaymentRecord();
    public SupplierReceipt saveSupplierReceipt(SupplierReceipt receipt);
    public Collection<SupplierReceipt> getAllSupplierReceipt();
    public Collection<SupplierInvoice> getAllUnpaidSupplierInvoice();
    public SupplierInvoice getSupplierInvoiceById(Long id);
    public Collection<RawMaterialSalesOrder> getAllSalesOrderWOInvoice();
    public Boolean matchSupplierInvoiceItems(SupplierInvoice invoice);
    public Boolean matchSupplierInvoiceTotal(SupplierInvoice invoice);
    public Boolean matchSupplierInvoiceCurrency(SupplierInvoice invoice);
    public String generateSupplierPaymentRecordId();
    public SupplierInvoice getSupplierInvoiceByIdStr(String idStr);
}
